package com.qiye.pointsserver.config;


import com.qiye.pointsserver.service.PointsLogRepository;
import com.qiye.pointsserver.service.UserInfoRepository;
import com.qiye.pointsserver.service.impl.PointslogServiceImpl;
import com.qiye.pointsserver.service.impl.UserinfoServiceImpl;
import jakarta.annotation.Resource;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;

@Component
public class DingShiConfig {

    @Resource
    private PointslogServiceImpl pointslogService;


    @Resource
    private UserinfoServiceImpl userinfoService;



    /**
     * cron = "0 0 9 * * ?"
     * 表示每天凌晨9点执行任务
     * cron表达式生成网址：https://cron.ciding.cc/
     * 当前方法为测试  每五秒执行一次 实际运行中请替换
     */
    // 每天早上 9 点执行任务 减少剩余天数
    @Scheduled(cron = "0 0 9 * * ? ")  // CRON 表达式：每天 9 点 0 分 0 秒执行
    public void updateDaysRemaining() {
        pointslogService.emailToPointsEquals7();  // 执行减少天数和发送邮件
        userinfoService.findUserinfoIdsWithBirthdayIn7Days();
        // 当前时间
//        LocalDateTime now = LocalDateTime.now();
//        System.out.println("执行了一次 时间："+ now);
    }
}
